Method and apparatus for control of hydraulic systems

ABSTRACT

An apparatus and method for controlling hydraulic systems. The control apparatus (module) accepts a variety of input forms, and the output is user-configurable to control both sides of an attached coil. The master module is programmable via a graphical user interface defining states and conditions triggering transitions between states. The master module may be combined with slave modules on a connection bus to control many subsystems. Reprogramming of the master module may occur in the field by use of flash memory, and input/output characteristics may be adjusted during operation of the system, allowing adjustment of systems exhibiting nonlinear response characteristics.

FIELD OF THE INVENTION

The following invention relates generally to methods of and apparatusfor controlling systems utilizing hydraulic power. More specifically,the instant invention relates to hydraulic control of multiple systemsincluding resetting hydraulic parameters according to a flexible ruleset.

BACKGROUND OF THE INVENTION

Typical systems under hydraulic control encompass a huge universe andinclude garbage trucks, nut harvesters, rock crushers, tub grinders,drilling machines, compactors, and grape harvesters. Control systems forhydraulic devices such as these have been developed and are currently inuse. The major problem attending control of such devices is the lack ofsmall-scale control of the systems. Large-scale control is simple:lifting, lowering, shaking, etc. Small-scale control can be analogizedto fine motor control in humans, e.g., how much force to use whensetting something down, or how much force to use when shaking fruit ornuts from a tree.

Lack of small-scale control results in damage: trees shaken too hard areuprooted; garbage cans set down too hard crack under the force; andworkpieces are overground or overdrilled. Such damage can be avoided bythe use of “smart” controllers: a controller that, for example, (1)picks up a receptacle, empties it, and, remembering where the ground is,sets it down without damaging it, or (2) harvests nuts by shaking thetrees without damaging the tree. Unfortunately, smart controllers arerare, and, if unable to be modified subsequently, must of necessitydefine parameters based on extreme conditions, which is inefficient,since it can lead to oversizing, overpowering, or worse, inadequateperformance.

SUMMARY OF THE INVENTION

The present invention is characterized by its use of a master modulehaving the ability to accept a variety of inputs and be programmed by auser to produce appropriate outputs. More specifically, the presentinvention includes a master control module that controls severalsubsystem devices. The master module may be located on a bus with otherslave devices/modules, each controlled by the master module. Severalslave devices/modules (e.g., input, output, network bridge, memory,etc.) may be controlled with one master module.

The master module accepts a variety of inputs, equipped with analoginputs, digital inputs, and universal inputs, which accept a variety ofsensor devices. It has both on/off and proportional outputs, in whichboth the high and low sides of a connected coil may be controlled. LEDsindicate the state of each connection.

Programming takes place through a graphical user interface on a computer(or other input device). The program is in a visual format, allowing theuser to specify several nodes through which the sequence travels and thetransitional sequences that direct the path from one node to another.The input/output profile is depicted graphically, and the user mayadjust the curve itself by adjusting the points on the curve.Adjustments may also be made while the controller is running. Thus,control of nonlinear response or of output having unknowncharacteristics may be achieved. Flash memory allows reprogramming inthe field.

During operation, additional modules allow collection and storage oftime-stamped (if desired) device data, which may be transferred to a PCfor subsequent display, manipulation, and analysis. Other modules allowdata transfer between devices that use different bus protocols andcontrol of devices located on a bus utilizing a different protocol.

OBJECTS OF THE INVENTION

It is a primary object of the present invention to provide a new andnovel method and apparatus to allow “intelligent” configuration andcontrol of hydraulic systems.

It is a further object of the present invention to provide a method andapparatus as characterized above utilizing a graphical user interfacethat may be programmed by a user without advanced knowledge ofhigh-level programming languages, and thus avoids high outsideprogramming costs.

It is a further object of the present invention to provide a method andapparatus as characterized above that provides for control of systemswith nonlinear response characteristics in real time, while the systemis in operation.

It is a further object of the present invention to provide a method andapparatus as characterized above that allows a user to control both highand low sides of an attached valve coil.

It is a further object of the present invention to provide a method andapparatus as characterized above that is versatile with respect toacceptable input forms.

It is a further object of the present invention to provide a method andapparatus as characterized above that indicates the state of theaccompanying system via LED display.

It is a further object of the present invention to provide a method andapparatus as characterized above that collects and stores data from theactive system for subsequent transfer to an external PC for manipulationand analysis.

It is a further object of the present invention to provide a method andapparatus as characterized above that may be integrated into aconnection bus to control other modules according to the sameprogramming.

It is a further object of the present invention to provide a method andapparatus as characterized above to provide a link that communicate withand capture data from devices located on a connection bus having adifferent bus protocol.

It is a further object of the present invention to provide a method andapparatus as characterized above to provide a link that allows controlof a device located on a connection bus that utilizes a different busprotocol.

Viewed from a first vantage point, it is an object of the presentinvention to provide a system for control of and bidirectionalcommunication between a central controller and a plurality of subsystemsoperatively dispersed on the system, comprising, in combination: eachsubsystem linked to both the controller and a work-performing device,having hydraulic fluid controlling operation of the device, thecontroller including means to modify operating criteria on eachsubsystem, the hydraulic fluid integrated in the system and distributedto each subsystem in accordance with the criteria as modified by thecontroller to effect change to the hydraulic fluid controlled device.

Viewed from a second vantage point, it is an object of the presentinvention to provide a method for programming logic sequences, the stepsincluding: orienting a plurality of reference points in a graphical userinterface; specifying a state for each reference point; designating oneof the reference points as a starting point; and identifying conditionsunder which transition between reference points occurs, wherein theplurality of reference points and the conditions form a logic sequencedepicted in the graphical user interface.

Viewed from a third vantage point, it is an object of the presentinvention to provide a system for creating a universalmicroprocessor-based control system for hydraulics, comprising, incombination: a master module having a plurality of inputs and outputs; aplurality of slave modules, wherein each slave module has a plurality ofinputs and outputs; a connection bus interposed between the mastermodule and the plurality of slave modules, the connection bustransmitting information therebetween; a work-performing deviceconnected to at least one of the outputs on the master module or theslave module, wherein the work-performing device has hydraulic fluidcontrolling operation of the device.

Viewed from a fourth vantage point, it is an object of the presentinvention to provide a method for graphically defining and managinginput/output functions for a controller, the steps including: connectinga controller and a work-performing device displaying output for thework-performing device as a function of input in a graphical format;specifying a plurality of movable points on the graphical format; andallowing control of nonlinear response of the work-performing device bythe controller via movement of the plurality of movable points.

Viewed from a fifth vantage point, it is an object of the presentinvention to provide a control apparatus for hydraulic valve systems,comprising, in combination: analog input means; non-analog input means;and output means responsive to input received by the analog input meansand the non-analog input means, wherein the analog input means and thenon-analog input means share a common portal.

Viewed from a sixth vantage point, it is an object of the presentinvention to provide a control apparatus for hydraulic valve systems,comprising, in combination: input means having a single portal, whereinthe input means are responsive to inputs comprising analog input andnon-analog input; and output means responsive to t h e inputs receivedby the input means.

Viewed from a seventh vantage point, it is an object of the presentinvention to provide a control apparatus for control of hydraulicvalves, comprising, in combination: input means, the input meansprogrammable by a user; and output means responsive to the input means,wherein the output means include a coil having a high side and a lowside and means for controlling both sides.

Viewed from a seventh vantage point, it is an object of the presentinvention to provide a module for linking a control system having anetwork which alters hydraulic means, comprising, in combination:network connection means; nonvolatile memory means communicating throughthe network communication means to store a plurality of data streamssent through the network connected through the network connection means;and output means to export stored data from the nonvolatile memorymeans.

Viewed from a eighth vantage point, it is an object of the presentinvention to provide a network bridge module for a hydraulic equipmentcontrol system which spans between first and second networksrespectively having first and second protocols, comprising, incombination: a first network connection means; a second networkconnection means; and relay means, wherein the relay means allowcommunication between the first connection means connected to the firstnetwork and the second connection means connected to the second network,and wherein control messages sent over the first network to a device onthe second network through the relay means effect control of the deviceon the second network.

Viewed from a ninth vantage point, it is an object of the presentinvention to provide a user-interface module for a hydraulic devicecontrol system, comprising in combination: network communication means,wherein the network communication means receives programming from anexternal source having an output, the output monitored by display means,wherein content of the display means is determined by programmingreceived over a network through the network communication means; andinput means feeding the network, the input means responsive to manualexternal input, wherein the manual external input is controlled from aseries of choices contained on the display means.

Viewed from a tenth vantage point, it is an object of the presentinvention to provide a system for control of hydraulic devices,comprising in combination: a master module having inputs and outputs,the master module programmable by a user; and a plurality of slavemodules, the plurality of slave modules chosen from the group consistingof: modules providing additional inputs; modules providing additionaloutputs; modules providing a user-interface into the system; modulesproviding nonvolatile memory storage; modules providing a network bridgebetween the system and a network utilizing a different protocol than thesystem; modules providing a display of system status; and modulesproviding a combination of additional inputs and additional outputs.

These and other objects will be made manifest when considering thefollowing detailed specification when taken in conjunction with theappended drawing figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 a depicts one embodiment of the present invention.

FIG. 1 b depicts a second embodiment of the present invention.

FIG. 2 is a diagram of the connection and indicator features of themaster module.

FIGS. 3 a and 3 b depict the relationship of the controller to thesystem, in two embodiments.

FIG. 4 shows the expansion of the master/slave system according to thepresent invention.

FIG. 5 is a pictorial representation of a program for the master module.

FIG. 6 shows the universal input options for the master module.

FIG. 7 shows possible output group configurations according to thepresent invention.

FIG. 8 shows an input/output function graph according to the presentinvention.

FIG. 9 depicts a module having additional digital inputs.

FIG. 10 depicts a module having additional high-side outputs.

FIG. 11 a depicts the front of a user-interface module.

FIG. 11 b depicts the back of a user-interface module.

FIG. 12 a depicts a memory module.

FIGS. 12 b-12 c show programming screens for a memory module.

FIGS. 12 d-12 e show data capture screens for a memory module.

FIG. 13 depicts a module having additional inputs.

FIG. 14 depicts a bridge module for connection to an additionalcommunication bus.

FIG. 15 depicts a universal I/O module.

FIGS. 16 a-16 b depict the programming environment with respect toadding modules to the system.

DESCRIPTION OF PREFERRED EMBODIMENTS

Considering the drawings, wherein like reference numerals denote likeparts throughout the various drawing figures, reference numeral 10 isdirected to the control system according to the present invention.

In its essence, the control system 10 is comprised of a master module100 having multiple inputs 106, including analog, digital, and universalinputs. Universal inputs are programmable; they accept input fromvarious types of sensors. Outputs 104 on the master module 100 includeboth on/off and proportional outputs. These outputs 104 allow amultitude of different output configurations to be programmed. LEDindicator lights 110 a-g on the master module 100 display the status ofthe various connections. The master module 100 may be used on its own orit may be combined with a plurality of slave modules 200 a-h for controlover a larger system (FIG. 4), preferably on a DeviceNet-compatible CANBus system.

Master module 100 is programmable by use of a graphical programmingenvironment 150 (FIG. 5). The resulting program is transferred to themaster module 100, preferably through a RS-232 serial connection, whereit then resides in the master module 100. The programming environment150 allows adjustment of the response curve 168 itself. The mastermodule 100 is equipped with flash memory and may be reprogrammed in thefield. The master module 100 controls all aspects of the system 10 alongthe connection bus 202, including the slave modules 200 a-h.

One embodiment of the control system 10 is provided in FIG. 1 a, whichrepresents the use of the master module to control a garbage truck. Themaster module 100 accepts power in 80 and inputs from and outputs to sixcomponents of the truck's operation. The gripper 82 controls grippingthe garbage can for transport; the inner boom 84 and the outer boom 86control the horizontal and vertical location of the garbage can; thecompactor/scraper 88 controls the compacting of garbage that has beenemptied into the truck; the tailgate 90 is either open or closed forallowing garbage into the truck, and the lift 92 controls the lifting ofthe truck bed for emptying the truck. All of these functions arecontrolled by one master module 100, with a subset of inputs and outputsdedicated to each function.

A second potential embodiment is shown in FIG. 1 b, which depicts acontrol system as applied to a nut or fruit harvester. The master module100 accepts power in 180 and inputs from and outputs to five componentsof the harvester's operation. The harvester grips the tree, utilizinghorizontal control 182 and vertical control 184. The harvesting itselfis accomplished by shaking the tree. Shaking motion may be controlled byan eccentric rotation defined by a radius component 186 and a rotationalcomponent 188. A gathering means control 190 is activated when the nutsare gathered during shaking and when the gathering means is full.

Referring now to FIG. 2, the master module 100 has a wide variety ofinput and output capabilities. As shown, the master module 100 includesa power supply connection 102, output connections 104, input connections106, and two types of communications inputs 108 a,b. Several LEDindicators 110 a-g are also present, for displaying the current statusof the system 10.

Preferably, the power supply for the master module 100 operates over thefull range of 8.5 Vdc to 32 Vdc and may be configured for high currentapplications. Output connections 104 for the master module 100 shown inFIG. 2 include six high-side outputs and three proportional(pulse-width-modulated (PWM)) outputs, which may be connected in variousways. All outputs are short-circuit protected and the proportionaloutputs may be configured to a specific current range for maximumsensing.

Input connections 106 for the master module 100 as shown include threeanalog/potentiometer inputs, eight digital (on/off) inputs, and threeuniversal inputs. Each universal input may be programmed to acceptanalog voltage/current input, quadrature pulse input, counter pulseinput, or RPM pulse input through the programming environment 150. Thus,any of several types of sensors may be connected to the master module100.

The master module 100 connects to other devices (i.e., slave devices 200a-h) preferably via CAN bus connector 108 a. An RS-232 port 108 b allowsconnection to a PC on which the programming environment 150 isconfigured or to an external display.

Finally, a plurality of LEDs 110 a-g are present on the master module100. As shown, the master module 100 has a power LED 110 a, a status LED110 b, eight digital input status LEDs 110 c, six high-side outputdriver status LEDs 110 d, three proportional output driver status LEDs110 e, and two CAN bus LEDs 110 f,g. Each LED indicates status for itsassociated component (color descriptions are exemplary):

-   -   Power LED 110 a: Blinks if the power supply voltage is above +30        Vdc. Turns off if the power supply voltage drops below +8.0 Vdc.    -   Status LED 110 b: This LED is programmable and is commonly used        for error status or blink codes.    -   Digital Input Status 110 c: Turns on when the corresponding        input is activated. Inputs can be programmed as active high or        low.    -   High-Side Output Driver Status 110 d: Turns on when the        corresponding High-side output is activated. Blinks once per        second for an open circuit. Blinks four times per second for a        short circuit.    -   Proportional Output Driver Status 110 e: This LED displays        minimum to maximum current status for the corresponding PWM        output. The LED will display from red to green as the current        changes from 0% to 100% (50% displaying yellow).        -   CAN Bus LED: Module Status (MS) 110 f:        -   Off—There is no power applied to the module.        -   On green—The module is operating in a normal condition.        -   Flashing green—Device in standby state. May need            commissioning.        -   Flashing red—Recoverable Fault.        -   On red—Module has an unrecoverable fault.        -   Flashing Red/Green—Device is in self-test.    -   CAN Bus LED: Network Status (NS) 110 g:        -   Off—Device is not on-line.        -   Flashing green—Device on-line; no established connection to            other nodes.        -   On green—Device on-line; established connection to other            nodes.        -   Flashing red—One or more connections are in a timed-out            state.        -   On red—The device has detected an error rendering it            incapable of communicating on the network.

As shown in FIG. 3A, the master module 100 is connected to severalsubsystem devices 30 that are all present on the same hydraulic flowcircuit 32. Each subsystem device 30 may be individually controlled.Alternatively, FIG. 3 b shows a setup in which the master module 100itself also has subsystems, or slave devices 200 a-h.

Aspects of the inputs 106 and outputs 104 are controlled in theprogramming environment 150 (FIGS. 6-8). FIG. 6 shows the setup screenfor a universal input. To set up a universal input, one selects an inputtype 152 and input range 154, and sets various parameters 156 pertainingto that particular type of input.

The output groups are similarly configured, shown in FIG. 7. One selectsthe output type 158 and sets its parameters 160. A coil diagram 162 forthe system is also present. For high-frequency proportional outputs, theuser may enable dither 164, which adds low-frequency dither to theoutput. Dither is used to make up for friction-related factors, stictionand hysterisis, that make controlling the valves seem erratic andunpredictable. Friction of a sliding object causes a reduction indistance moved. Stiction can keep the spool from moving for smallcontrol input changes, such that the spool moves too far when thecontrol input changes enough to free the spool. In such a case, theforce required to move the spool is more than is required to achieve thedesired spool shift. Hysterisis can cause the spool shift to bedifferent for the same control input, depending on whether the controlis changing up or down. The friction of the moving spool is resistingthe current's attempt to move it, so the spool shift will be less thanthat desired. The direction the spool was shifting determines if thespool shifts too far or not far enough.

Dither is a rapid, small movement of the spool about the desired shiftpoint. It is intended to keep the spool moving to avoid stiction andaverage out hysterisis. Dither must be large and slow enough to make thespool move and small and fast enough not to cause pulsing or resonancein the system. The goal is to provide just enough dither to fix theproblems without creating new ones.

Low-frequency pulse-width modulation (PWM) (typically less than 300 Hz)generates dither as a by-product of the PWM process. The amount ofdither changes as the average coil current changes, reaching a maximumat 50% duty cyde. This may result in too much dither at some currentlevels and not enough at other levels. Different spools have differentresponses to the same dither current. Changing the PWM frequency willallow adjustment of the dither, but the amplitude and frequency of thedither cannot be independently adjusted. When the PWM frequency is highenough (typically above 5 kHz), the coil current will not have time tochange significantly, and no byproduct dither is produced. Addition ofdither during high-frequency PWM can thus be regulated, unlike duringlow-frequency PWM. The dither amplitude and frequency may beindependently adjusted for maximum positive effect with minimalproblems.

FIG. 8 depicts input/output functions of the master module 100 that maybe individually programmed. There are eight input/output functions thatcan be programmed individually. The I/O function gives the user theability to change the response of the output with the change of theinput. The input and output is based on zero to 100% (Min. to Max.).Different adjustable points 166 on the response curve 168 give the userfull flexibility to control non-linear responses. These functions areadjustable while the controller is running, allowing adjustment ofunknown output characteristics.

The programming environment 150 is used to program operations for themaster module 100. The programming environment 150 utilizes a graphicalinterface and requires knowledge of the PC's operating system, lightprogramming, and electro-hydraulics. At the outset, states 52 areentered, along with transitions 54 connecting the states 52, on theprogramming screen 50. Each transition 54 connects two states 52. States52 are points in the program in which a particular logic sequence isrepeated until a transition condition 56 is met. When the transitioncondition 56 is met, the program will change states 52. The states 52and transitions 54 form a picture of the program that will be executed,shown in FIG. 5. The program represented in FIG. 5 is that for acompacting device. After graphically representing the program, theactual states and transitions are entered.

FIG. 5 contains states 52 with captions. Above the state 52 is adescription. The starting point's description always starts with an“(S)” 58. In this example the starting point is the state 52 with thecaption “M”. Transitions 54 are the lines that connect two states 52. Ifthe transition 54 goes in only one direction, there will be only onearrowhead. If there are two arrowheads, it is necessary to know how toread the transition condition. If a transition condition is listed as“M: Retract = False”, it is read as “Go to M When Retract = False”. Thefirst chart depicts the setup of input 106 and output 104 for thissystem. The second chart is a list of all the states 52 and therespective transition conditions 56 for the program depicted in FIG. 5.

Input and Output Configurations

Name Function Type Auto Starts the Auto Cycle Digital Input ExtendManual Cylinder Extend Digital Input Retract Manual Cylinder RetractDigital Input ExtLimit True when the Cylinder is fully extended DigitalInput RetLimit True when the Cylinder is fully retracted Digital InputExtSol Bang-Bang valve that extends the Cylinder Digital Output RetSolBang-Bang valve that retracts the Cylinder Digital Output

States and Transitions

State Caption Function Manual Mode M Turn off Solenoids Go to Ext whenExtend is True Go to Ret when Retract is True Go to A when Auto is TrueManual Extend Ext Turn on the Extend Solenoid Go to M when Extend isFalse Manual Retract Ret Turn on the Retract Solenoid Go to M whenExtend is False Auto Start A Turn off Solenoids Go to Ex when Auto isFalse Auto Extend Ex Turn on Extend Solenoid Go to A when Auto is TrueGo to M when Retract is True Go to Ext when Extend is True Go to Re whenExtLimit is True Auto Retract Re Turn on the Retract Solenoid Turn offthe Extend Solenoid Go to A when Auto is True Go to M when RetLimit isTrue or Extend is True Go to Ret when Retract is True

The master module 100 may be used alone, or it may be used as in FIG. 4,with several slave modules 200 a-h. As the name implies, the slavemodules 200 a-h receive instruction from the master module 100 along aconnection bus 202, preferably a DeviceNet-compatible CAN bus. Additionof slave modules 200 a-h allows control of a larger system andmonitoring of specific functions.

To create a larger system, one may add a digital input module 200 a, ahigh-side output module 200 b, an analog input module 200 e, or auniversal I/O module 200 g. One may also connect and communicate withadditional master modules 100.

The digital input module 200 a (FIG. 9) provides for additional digitalinputs to the system. The module 200 a has power connectors 210, digitalinput connectors 212 (a combination of sinking and sourcing connectors),a bus connector 214, preferably for connection to a DeviceNet-compatibleCAN bus, and a communication port 216, preferably an RS-232 port, formonitoring and setting the node number. LEDs 218 a-c indicate status ofeach input 218 a, the status of the module 218 b, and the status of thenetwork 218 c.

The high-side output module 200 b (FIG. 10) provides additionalhigh-side outputs to the system. The module includes power connectors220, output connectors 222, and a bus connector 224, preferably forconnection to a DeviceNet-compatible CAN bus. LEDs 226 a-c indicatestatus of each output connection 226 a, the status of the module 226 b,and the status of the network 226 c.

The analog input module 200 e (FIG. 13 a) provides additional analog anddigital inputs to the system. The module includes power connectors 250,input connectors 252 (digital and analog, preferably includingthermistor inputs), and a bus connector 254, preferably for connectionto a DeviceNet-compatible CAN bus. LEDs 256 a-c indicate status of eachinput connection 256 a, the status of the module 256 b, and the statusof the network 256 c.

The universal I/O module 200 g (FIG. 15) provides additional Output andinputs to the system. The outputs may be the same as those present inthe master module 100. The universal I/O module includes powerconnectors 270, analog and digital input connectors 272, high-sideoutput connectors 274, proportional output connectors 276, a busconnector 278, preferably for connection to a DeviceNet-compatible CANbus, and a communication port 280, preferably an RS-232 port, formonitoring and setting the node number. LEDs 282 a-c indicate status ofeach input 282 a, the status of the module 282 b, and the status of thenetwork 282 c. This module is programmed in the same way as the mastermodule 100, through the programming environment 150.

An interface module 200 c (FIG. 11) provides a link between the user andthe system during operation, includes power connectors 230, a busconnector 232, preferably for connection to a DeviceNet-compatible CANbus, and preferably features an LCD display 234, a keypad 236, anddiagnostic LED indicators 238 a-d. The LEDs indicate status of themodule 238 a, and status of the network 238 b, and report general fault238 c and general status 238 d information. The options availablethrough the interface module 200 c, a slave module to the master module100, are programmed in the code for the master module 100, that is, inthe programming environment 150, discussed hereinabove. The screens thatappear on the display 234 are programmed in the programming environment150 using the same type of logic code sequences as described for themaster module 100.

A memory module 200 d (FIG. 12 a) allows storage of trend, event, andfault data, each of which may be time-stamped when collected. This datamay be exported, preferably through an RS-232 connection, into anexternal PC. The memory module 200 d may be programmed (through themaster module 100) to collect and store raw data (for latermanipulation) or to apply calculations to or combine other data with theraw data before it is stored. The total memory available may bepartitioned among the various collection streams. The memory moduleincludes power connectors 240, a bus connector 242, preferably forconnection to a DeviceNet-compatible CAN bus, and a communication port244, preferably an RS-232 port, for monitoring, downloading, and settingthe node number. LEDs 246 a-e indicate data status 246 a, status of thereal-time clock 246 b, alarm status 246 c, status of the module 246 d,and status of the network 246 e. FIGS. 12 b and 12 c depict theprogramming producing the exported output in FIGS. 12 d and 12 e.

A bridge module 200 f (FIG. 14) connects to the base connection bus 202to another bus 204 (FIG. 4), preferably a bus utilizing the J1939protocol. The bridge module 200 f allows the master module 100 to obtaindata from devices on the second bus 204 without adding a significantamount of traffic to either bus. In addition, the master module 100 mayissue commands to a device on the second bus 204. Thus, the system ofthe present invention allows control of devices on a separate butattached bus 204 that utilizes a different protocol than the baseconnection bus 202. The bridge module includes power connectors 260, abus connector 262, preferably for connection to a DeviceNet-compatibleCAN bus, a second bus connector 264, preferably for connection to aJ1939 CAN bus, and a communication port 266, preferably an RS-232 port,for monitoring, downloading, diagnostics, and setting the node number.LEDs 268 a-c indicate the status of the module 268 a, the status of thebase network 268 b, and the status of the second network 268 c.

An external display 200 h may be connected directly to the baseconnection bus 202 to monitor the entire system.

The interface for the programming environment 150 allows easy additionof modules to the system (FIGS. 16 a, 16 b). FIG. 16 a depicts theselection screen for modules, and FIG. 16 b depicts the graphic displayof modules present in a system.

Moreover, having thus described the invention, it should be apparentthat numerous structural modifications and adaptations may be resortedto without departing from the scope and fair meaning of the instantinvention as set forth hereinabove and as described hereinbelow by theclaims.

1. A system for control of and bidirectional communication between acentral controller and a plurality of subsystems operatively dispersedon said system, comprising, in combination: each said subsystem linkedto said controller, either directly or using communication bus means,and a work-performing device, having hydraulic fluid controllingoperation of said device, said controller including means to modifyoperating criteria on said subsystem, said hydraulic fluid integrated insaid system and distributed to each said subsystem in accordance withsaid criteria as modified by said controller to effect change to saidhydraulic fluid controlled device.
 2. The system of claim 1 wherein saidcentral controller alters hydraulic fluid flow at each device via meansfor setting limits on each said subsystem to control fluid demand. 3.The system of claim 2 wherein said controller includes means to modifyvalve throughput at each said device.
 4. A method for programming logicsequences, the steps including: orienting a plurality of referencepoints in a graphical user interface, said graphical user interfaceshown on a display; specifying a state for each of said plurality ofreference points; designating one of said plurality of reference pointsas a starting point; and identifying conditions under which transitionbetween reference points occurs, wherein said plurality of referencepoints and said conditions form a logic sequence depicted in saidgraphical user interface.
 5. The method of claim 4 further including thesteps of saving said logic sequence; and transferring said logicsequence to a controller, wherein said controller operates awork-performing device according to said logic sequence.
 6. The methodof claim 4 further including the steps of saving said logic sequence;and transferring said logic sequence to a fluidic circuit whichoperatively conditions a system formed from plural elements eachinfluenced by said circuit.
 7. A system for creating a universalmicroprocessor-based control system for hydraulics, comprising, incombination: a master module having a plurality of inputs and outputs; aplurality of slave modules, wherein each slave module has a plurality ofinputs and outputs; a connection bus interposed between said mastermodule and said plurality of slave modules, said connection bustransmitting information therebetween; a work-performing deviceconnected to at least one of said outputs on said master module or saidslave module, either directly or using communication bus means, whereinsaid work-performing device has hydraulic fluid controlling operation ofsaid device.
 8. (canceled)
 9. A control apparatus for hydraulic valvesystems, comprising, in combination: analog input means; non-analoginput means; and output means responsive to input received by saidanalog input means and said non-analog input means, wherein said analoginput means and said non-analog input means hare are received by asingle common portal.
 10. The apparatus of claim 9 wherein said inputrecognized by said non-analog input means comprises pulse inputs.
 11. Acontrol apparatus for hydraulic valve systems, comprising, incombination: input means having a single portal, wherein said inputmeans are responsive to inputs comprising analog input and non-analoginput; and output means responsive to said inputs received by said inputmeans, whereby said single portal receives either analog input ornon-analog input.
 12. A control apparatus for control of hydraulicvalves, comprising, in combination: input means, said input meansprogrammable by a user; and output means responsive to said input means,wherein said output means includes a coil having a high side and a lowside and means for controlling both said sides, said means forcontrolling both said sides including parameters for said high side andsaid low side, said parameters entered by a user.
 13. The controlapparatus of claim 12 wherein said output means produces either anoutput having a constant supply source voltage or a PWM output thatsinks current to ground at a pulse-width-modulated frequency.
 14. Thecontrol apparatus of claim 12 wherein said PWM output may be configuredto a particular current range.
 15. The control apparatus of claim 14wherein said frequency is between 19 kHz and 20 kHz.
 16. (canceled) 17.A module for linking a control system having a network which altershydraulic means, comprising, in combination: network connection means,said network connection means receiving programming from an externalsource having an output, said programming allowing selection of datatypes to be collected; nonvolatile memory means communicating throughsaid network communication means to store a plurality of data streamssent through the network connected through said network connectionmeans, said data streams corresponding to said selection of data typesand stored according to said programming; and output means to exportstored data from said nonvolatile memory means.
 18. The module of claim17 further comprising clock means, said clock means supplementing saidplurality of data streams with a time stamp.
 19. The module of claim 18wherein said nonvolatile memory means is divided into partitions tostore said plurality of data streams simultaneously, each said datastream sequestered in a separate partition.
 20. The module of claim 19wherein any of said plurality of data streams comprises trend data,event data, fault data, or any combination thereof.
 21. The module ofclaim 20 wherein any of said plurality of data streams comprises rawdata.
 22. The module of claim 21 wherein any of said plurality of datastreams comprises data that has been manipulated or supplemented. 23.The module of claim 22 wherein said output means interface with anexternal data manipulation and/or viewing means.
 24. A network bridgemodule for a hydraulic equipment control system which spans betweenfirst and second networks respectively having first and secondprotocols, comprising, in combination: a first network connection means;a second network connection means; and relay means, wherein said relaymeans allow communication between said first connection means connectedto the first network and said second connection means connected to thesecond network, and wherein control messages sent over the first networkto a device on the second network through said relay means effectcontrol of the device on the second network, wherein said first andsecond protocols differ from one another.
 25. The network bridge moduleof claim 24 wherein information from the device on the second network iscollected by a device on the first network for use by the hydraulicequipment control system.
 26. (canceled)
 27. The control apparatus ofclaim 12 wherein said input means includes means having a single portal,wherein said input means are responsive to inputs comprising analoginput and non-analog input.
 28. The control apparatus of claim 27wherein said output means produces either an output having a constantsupply source voltage or a PWM output that sinks current to ground at apulse-width-modulated frequency.
 29. The control apparatus of claim 27wherein said PWM output may be configured to a particular current range.30. The control apparatus of claim 29 wherein said frequency is between19 kHz and 20 kHz.
 31. (canceled)
 32. A system for control of hydraulicdevices, comprising in combination: a master module having inputs andoutputs, said master module programmable by a user; and a plurality ofslave modules, said plurality of slave modules chosen from the groupconsisting of: modules providing additional inputs; modules providingadditional outputs; modules providing a user-interface into said system;modules providing nonvolatile memory storage; modules providing anetwork bridge between said system and a network utilizing a differentprotocol than said system; modules providing a display of system status;and modules providing a combination of additional inputs and additionaloutputs, whereby the hydraulic devices are controlled by said mastermodule in combination with said plurality of slave modules.
 33. Acontrol apparatus for control of hydraulic valves, comprising, incombination: input means, said input means programmable by a user; andoutput means responsive to said input means, wherein said output meansincludes a coil having a high side and a low side and means forcontrolling both said sides, and wherein said output means produceseither an output having a constant supply source voltage or a PWM outputthat sinks current to ground at a pulse-width-modulated frequency, andwherein a dither frequency is superimposed on said frequency.
 34. Acontrol apparatus for control of hydraulic valves, comprising, incombination: input means, said input means programmable by a user, andsaid input means includes means having a single portal, wherein saidinput means are responsive to inputs comprising analog input andnon-analog input; and output means responsive to said input means,wherein said output means includes a coil having a high side and a lowside and means for controlling both said sides, and wherein said outputmeans produces either an output having a constant supply source voltageor a PWM output that sinks current to ground at a pulse-width-modulatedfrequency, and wherein a dither frequency is superimposed on saidfrequency.
 35. A system for controlling a plurality of hydraulicdevices, comprising, in combination: a plurality of hydraulic devices;and a master controller connected to each said hydraulic device, eitherdirectly or using communication bus means, wherein said mastercontroller is programmed to control aspects of each said hydraulicdevice and wherein said master controller includes means to re-programsaid master controller with respect to any of said plurality ofhydraulic devices during use.
 36. A control apparatus for control ofhydraulic valves, comprising, in combination: input means; and outputmeans responsive to said input means, said output means comprisingoutput groups, said output groups having means for specificallycontrolling parameters about output from said output means.
 37. Thecontrol apparatus of claim 36 further comprising means for controllingparameters about input received through said input means.
 38. A methodof programming logic sequences in a graphical user interface shown on adisplay, the steps including: defining at least two states, each saidstate represented by a graphical element; and specifying at least onetransition between pairs of said at least two states, said transitionrepresented as a connection between said states, whereby the graphicallyrepresented logic sequence forms a picture of a program to be executed.39. The method of claim 38 further including the steps of: identifyingtransition conditions associated with each said transition; and labelingeach said transition with an associated said transition condition. 40.The method of claim 39 further including the step of: labeling each saidstate with a caption.
 41. The method of claim 40 further including thestep of: indicating a starting point for the logic sequence in agraphical manner, said starting point represented in said caption.
 42. Agraphically formed logic programming sequence, comprising, incombination: at least two states, each said state represented by asingular element; a plurality of transitions, each said transitiongraphically connecting a pair of said states; and a plurality oftransition conditions, each said transition associated with at least onesaid transition condition, each said transition condition adjacent tosaid associated transition.